home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 26 / Cream of the Crop 26.iso / program / qlib205.zip / QLIB.ZIP / TXT / NEW.TXT < prev    next >
Text File  |  1997-07-13  |  17KB  |  352 lines

  1. New stuff in v2.05 *Final*
  2.   - operator delete has been added
  3.     Now the \test\testcpp.cpp program fully compiles using:
  4.      BCPP2EXE.BAT or
  5.      WCPP2EXE.BAT or
  6.      MCPP2EXE.BAT
  7.     It was not easy.  Check out the \SRC\QLIB directory and look at
  8.     ?CCPP.CPP files.  Each compiler has it's own C++ calling convention,
  9.     so the new() and delete() operators are compiled with each compiler.
  10.   - packit.exe was corrupted and recompiled
  11.   - fixed problems in lzw.h and stdlib.h
  12.   - fixed bug in str2numx(), recompiled QSETUP to fix problem (v1.01a)
  13.   - NASM v0.94 has been supported:
  14.       NASM2EXE.BAT and NASM2OBJ.BAT have been added.
  15.       Note: NASM does not support the files within the \INC directory
  16.       so your own your own.  I'll try and come up with something.
  17.       (TASM does not really support those INC files either, I'll have to
  18.       try and accomidate them all).
  19.      See : \test\nasmtest.asm
  20.   - WASM has also been supported:
  21.       Use WASM2EXE.BAT and WASM2OBJ.BAT (it also does not support those INCs)
  22.  
  23. New stuff in v2.04 *Final*
  24.   - supports Watcom C++ v11.0
  25.     - it seems that the (-7) option I was using is no longer supported but
  26.       (-fpi87) does the same trick and is supported by both 10.6 and 11.0
  27.  
  28. New stuff in v2.04 Beta #2
  29.   - Now supports Visual C++ Compilers (32bit) CL.EXE
  30.     new BAT files are:
  31.       MC2OBJ.BAT & MCPP2OBJ.BAT - compile to OBJ file
  32.       MC2EXE.BAT & MCPP2EXE.BAT - compile to EXE file
  33.   - outp... fixed (now returns value you gave)
  34.   - fixed scanf() and gets() to use new key codes (use to use old made-up
  35.     key codes)
  36.   - the exec...() bugs have been finaly removed, I've found that Borland
  37.     does it the same way I do so it never really was a bug...
  38.  
  39. New stuff in v2.04 Beta #1
  40.   - now supports WDOSX dos extender
  41.   - Major Bug fix : filelength() and tell() were using the old 21/42h funcs
  42.       when QLIB was using DOS32 dos extender.  Now fixed to use CX:DX as
  43.       PMODE/W does not extend that func.  This was how DOS/4GW does it too.
  44.   - QLINK executes the SET file differently now.  See compile.txt.
  45.   - All ...2EXE.BAT files will accept OBJs and LIBs to be linked in final EXE
  46.     (ie:  bc2exe prog qgrafix.lib)
  47.   - FIX: random() was not preserving regs
  48.   - NEW:
  49.       void *t_savestate() = saves current video mode (text mode only)
  50.                   - will use malloc()
  51.       void t_restorestate(void *) = restores video mode
  52.                   - does not free memory (just use free() if you no longer
  53.                     need it)
  54.  
  55. New stuff in v2.03 *Final*
  56.   - added : delay(), sleep(), sound(), nosound()
  57.  
  58. New stuff in v2.03 Beta #5
  59.   - iASM has been removed from the BAT files cause it causes too many
  60.     problems (see iasm.txt to find out why)
  61.   - grafix fixes : g_put0()
  62.   - grafix additions : g_setfntcolor()
  63.     Sets color to draw mono-coloured fonts.  Mono-coloured fonts are new
  64.     but all they are is just the flags bit in the fnt header set to "1".
  65.     If coloured fonts are loaded then g_setfntcolor() will fail.
  66.   - g_fntcolor() has been removed. (it was used to physically change a loaded
  67.     font to another color instead)
  68.   - the grafix routines have been slightly optimized.
  69.   - stdin,stdout,stderr,etc. were placed back in stdio.h since I removed
  70.     them when I was trying to add Stream IO.  Note they are still just handles
  71.     NOT streams! (fprintf() uses handles not streams)
  72.   - fix : font.c was not creating 32bit fonts properly
  73.   - new : font.c can now create mono-color fonts (option /m)
  74.  
  75. New stuff in v2.03 Beta #4
  76.   - fixed a major bug in iASM (v1.01 released)
  77.   - fixed a major bug in grafix LIBs that was introduced in last Beta release
  78.   - fixed a major bug in QSETUP (v1.01 released)
  79.   - fixed a minor bug where if main() had parameters then Watcom added
  80.     an 'extern argc' (without the underscore) for no reason.
  81.   - fixed a minor bug in QLINK.BAT where it would not run .SET files
  82.     if DOS/4GW was used instead of PMODE/W
  83.   - time() has been renamed to _time() due to naming conflicts
  84.   - fixed clock() and _time(), were not preserving all regs
  85.   - fixed a bug in realloc()
  86.   - moved directoies around a little
  87.   - The MAKE Bat files in \test have been replaced with actual MAK files
  88.   - QMAKE was created to help a little (actually does not really do
  89.     anything special but what the hay)
  90.  
  91. New stuff in v2.03 Beta #3
  92.   - fixed more typos in Header files
  93.   - fixed a MAJOR bug in lseek()
  94.     It seems that DOS32 extends DOS func 42h but PMODE/W and DOS/4gw don't
  95.     and since QLIB was orginially desiged for DOS32 it was expecting it to
  96.     be extended.  The result was that seeks beyond 64k would wrap around.
  97.     
  98. New stuff in v2.03 Beta #2
  99.   - fixed major bug in int86...() funcs
  100.   - fixed typos in Header files
  101.  
  102. New stuff in v2.03 Beta #1
  103.   - Windoze 95 title/close awareness functions added
  104.     see \TEST\Win95.c
  105.   - now CPP compatible !  (but QLIB still does not support streams)
  106.   - wherex() and wherey() added
  107.   - time() and clock() added with time.h (time.inc)
  108.  
  109. New stuff in v2.02
  110.   - getch() now supports multi-language kbds, so now getch() returns ASCII
  111.     keys in compliance with ANSI C.  My special keys are no longer returned
  112.     but the key_tables are still there and maintained by the IRQ handler.
  113.   - ungetch() was added
  114.   - another total grafix update  (major improvement!!)
  115.     The Grafix Funcs have become more easier to use.  I've made it more
  116.     consistant when setting up video modes.  The 3 funcs are:
  117.     g_getmode(x,y,bpp) - checks if mode is avail. Supports VGA,VESA 1.2 & 2.0
  118.       and modeX.
  119.     g_setmode(void) - sets last mode that was checked with g_getmode()
  120.     t_setmode(x,y) - sets text mode to (x,y)
  121.     Please read VIDEO.TXT within the TXT dir.
  122.     Note : The grafix LIBs are now a seperate LIB from QLIB.  It's called
  123.       QGRAFIX.LIB and you should use QLINK to link it in with your projects.
  124.       See M-GRAFIX.BAT within \TEST for a good example.
  125.   - the DMA alloc funcs have been changed slightly
  126.   - spawn...() was fixed.  Preivously new enviroments were not setup
  127.     correctly
  128.  
  129. New stuff in v2.01
  130.   - updated PACK file sub-system greatly
  131.     - no funcs were reserving regs (bug)
  132.     - pack_open_hdr() added which is the same as pack_open() but the new
  133.       one requires a header already loaded in memory and a ptr that
  134.       pts to it (see pack.txt) The header comes from a new option with PACKIT
  135.     - lseek has more error trapping
  136.     - pack_init() now takes 2 parameters (see pack.txt)
  137.     - pack_uninit() added : frees buffer and such (disables the whole thing)
  138.       closes all files
  139.     - pack_close() added : closes packed files
  140.   - added random funcs
  141.     - rand(),srand(),random(),randomize()
  142.   - gets(), puts() added (never really needed them before)
  143.   - fixed a bug in callp (v1.05)
  144.   - added BIN2ASM, a utility to convert files into ASM files so you can insert
  145.     them into your EXE file easily
  146.   - clrscr() was clearing too much video RAM and erasing b800h for 16k.
  147.     a mirracle it was never detected until today when for some reason
  148.     my programs where no longer working
  149.  
  150. New stuff in v2.00 *FINAL*
  151.   - nothin' same as Beta #8
  152.  
  153. New stuff in v2.00 Beta #8
  154.   - scanf() fixed heavily
  155.   - Watcom Math LIBs fixed (again)
  156.  
  157. New stuff in v2.00 Beta #7
  158.   - added support for %e (...scanf() supports it too)
  159.   - change OS detection slightly (new variables, see os.txt)
  160.   - and other bug fixes
  161.   - spawn...() bugs have been traced down to a PMODE/W bug, so QLIB was
  162.     working the whole time. (use DOS/4GW until this is resolved)
  163.   - atof() bug fix and supports exp numbers (ie: 4.43e4)
  164.   - ctype.h now includes all those is... macros (stolen from BCv5.0)
  165.     Sorry, not avail in ctype.inc (come on, ASM doesn't need it)
  166.  
  167. New stuff in v2.00 Beta #6
  168.   - fixed Math LIBs greatly
  169.   - also fixed WC2EXE and WPP2EXE to use Watcom Math LIBs by default which
  170.     for some reason was not setup (that's what you get for block copying)
  171.   - fixed width specs for %f
  172.   - NOTE : the new stdio funcs presented in Beta #5 DO NOT use
  173.     streams, they just use file IO handles.
  174.  
  175. New stuff in v2.00 Beta #5
  176.   - alloc_phys() now returns NULL on error (as does malloc,calloc and getenv)
  177.   - free_phys() fixed
  178.   - added many math funcs (exp, log, log2 ,log10, pow, sqrt)
  179.   - added some stdio funcs (fprintf, vfprintf)
  180.     These func do not use streams but the stdin,stdout DOS handles!
  181.   - added perror(), sys_errlist, sys_nerr (under 2k)
  182.   - ftoa() now support +/-NAN and +/-INF !!!
  183.  
  184. New stuff in v2.00 Beta #4
  185.   - pasm now handles single quotes inside the double quotes for you
  186.     Before you had to double them up so that inside _str_.tmp they would
  187.     work.  Anyways...it's fixed
  188.   - fixed realloc() (not even tested before)
  189.   - callp macro now can push REAL10
  190.   Note : I will release this as "v2.00 FINAL" as soon as ALL known bugs are
  191.          squashed. (like the damn spawn...() bug)
  192.  
  193. New stuff in v2.00 Beta #3ab
  194.   - make.bat in \lib\src was updated to support newer Add-ons to appear soon
  195.   - gui was taken out because a newer version will be introduced soon with
  196.     a visual editor (this will be an Add-on)
  197.   - play was taken out because it will be replaced with AVI support some
  198.     day
  199.   - Add-ons will be GUI,M32(updated and with an editor),SC(sound card services
  200.     supporting SB,GUS)  All this will hopefully happen over the next year.
  201.   - 'play' and the old 'gui' will be available as Add-ons but will be outdated
  202.     someday
  203.   a] fixed alloc.h (realloc() was wrong)
  204.   b] recompiled all EXEs making them smaller because GUI and PLAY were removed
  205.  
  206. New stuff in v2.00 Beta #2
  207.   - QSETUP was added to control memory alloc during startup
  208.     - fixes a bug that prevented spawn...() and system() from
  209.       working under Windoze (or any DPMI server)
  210.   - HEAP_MIN and HEAP_MAX may be zero now, making the EXE require no XMS.
  211.   - QLITE bat file made (to make compressing easier)
  212.   - bug fixed : vsprintf() was not preserving regs
  213.  
  214. New stuff in v2.00 Beta #1
  215.   - Now requires PMODE/W
  216.   - dropped the debugger
  217.   - major changes to the video drivers (see video.txt in \txt for
  218.     explaination - functions have been added/renamed!)
  219.     VESA 2.0 is no longer required to use the mouse and stuff (VESA 1.2 is)
  220.     modeX grafix added
  221.   - removed setvect,getvect cause I don't know how they should work in PMODE
  222.     just use setint,getint,setrmint,getrmint
  223.   - support for Borland C complier (bcc32.exe) added (required to make seperate
  224.     math LIB)
  225.   - created new header files which are now more C compatible (see examples)
  226.   - all Video function now are prefixed with 'g_' to unclutter things
  227.     and a few where totally renamed
  228.       v_copy = g_copy
  229.       gset = g_setbuf
  230.   - added support for BCv5.0
  231.   - final switch back to C convention where the underscore is appended to
  232.     all globals/externs (placed a #pragma aux default "_*"; in QLIB.H
  233.     when using the Watcom compiler to allow this)
  234.   - renamed some num2str... procs (see next line)
  235.   - added many, many functions
  236.       getche(), num2strb(str,binary), num2strx(str,hex), num2stro(str,octal)
  237.       ALL "C" string functions (ie: strccpy, strcspn, stricmp, etc.)
  238.  
  239. New stuff in v1.20.00
  240.   - getch() now also returns:
  241.     90h = Pause key (non-repeater)
  242.     91h = Print screen
  243.   - keyboard services have been greatly improved
  244.     - key LOCKS are handled by BIOS now
  245.     - certain keys can be blocked from going to RMODE to prevent CTRL+BRK
  246.       and CTRL+ALT+DEL:  key_block(x) where x-> 1=yes 0=no
  247.     - LOCK keys can be blocked from going to RMODE: key_block_locks(x) dito
  248.     - key_lights(x) to change the kbd lights (also updates BIOS flags)
  249.   - setvect/getvect added in C programming (in case you don't wanna use the
  250.     setint/getint that I created (they simple just call them - kinda)
  251.  
  252. New stuff in v1.10.00
  253.   - Naming the project QLIB (Quick Libraries)!!
  254.   - key_init() is now called during startup and is no longer public
  255.   - ALL FUNCTIONS NOW RETURN -1 ON ERRORs (including malloc,getenv...)
  256.     I hate trying to guess what each one uses.  Placed  'ERROR equ -1' in
  257.     qlib.inc and qlib.h
  258.   - changed start32.inc to qlib.inc  (and the .h version too)
  259.   - changed start32.obj to c0.obj
  260.   - changed scanf() to sprintf() (that is what it was really doing) duh!!!
  261.       I don't know why I called it that before.  Oh well, it's fixed now
  262.   - added so many new funtions
  263.       str2num() and hex/binary versions : str2num_h str2num_b
  264.       sscanf() just like in C
  265.   - oh so many more bug Fixes
  266.     - memcpy was not copying backwards properly when src<dest
  267.     - lots of video funcs were not even tested before
  268.   - debugger is now easily added (just /d and the c0 does not have 3 versions
  269.       to call the debugger)
  270.   - FONT files now have a simple header
  271.   - Added GUI.ASM : A simple grafix user interface program -> I'm using it for
  272.     my MOD editor, making somethin like FT2
  273.   - The Video.asm has gone under slight changes for speed.
  274.       -v_copy has 2 versions now (1 for 256 color mode and another for all
  275.         others - but you don't have to worry which to use, just use v_copy
  276.         and it will do what is correct) (it was for speed!)
  277.       -gloadfnt() now allocs RAM for you and returns ptr in eax
  278.       -gfntcolor() NEW! Used to change the color of fonts (for single
  279.         color fonts only in 256 color modes only) - Something I needed
  280.       -fixed many bugs
  281.   - Default stack size is now 8Kb (in c0.asm)  ...it was 64K
  282.   - Check out GUITEST.EXE in 'test' and PLASMA.EXE
  283.   - created new BAT files for C compiling
  284.     C2EXE.BAT - for use with the Watcom C compiler (it sets many options with
  285.       in the BAT file neccessary to use Watcom)
  286.     BC2EXE.BAT - for use with Borland C V4.x compiler  (BCC32.EXE)
  287.   - generate underbar to all globals is now disabled!
  288.      This is because watcom can't add them but BCC32 and MASM has the choice
  289.        so I decided not to add them anymore.  In BCC32 and option -u is used
  290.        and in MASM I use SYSCALL which is just like C except no underbar
  291.        adding (according to dox it is not like C but the dox are messed up)
  292.   - and much much more but I can't remember it all now
  293.  
  294. New stuff in V1.00.03
  295.   - more bug fixes
  296.   - never released? can't remember why...
  297.  
  298. New stuff in V1.00.02
  299.   just bug fixes:
  300.     - getenv was returning -1 on error but should have been NULL
  301.     - text.asm which is included in programs had an END directive
  302.  
  303. New stuff in V1.00.00 Alpha #1:
  304.   MAJOR CHANGES!!!
  305.   - Changed video drivers from DLLs to a single OBJ file.
  306.     Now supports VBE 2.0 with linear addressing.  (both required to use VESA
  307.       modes) And stardard VGA mode.  All have mouse support and loading/printing
  308.       fonts.
  309.   - Added many more ANSI C funtions:
  310.       file io: chdir,mkdir,rmdir,getcwd,getdcwd,unlink,setdisk,getdisk,rename
  311.       misc: memcpy(overlayable),memset,memcmp
  312.       string: str2num
  313.   - Finished Flic player:
  314.       bmp2flk : utility to convert multiple BMP files into a flic (FLK)
  315.       playflk : view flics of 320x200x24bit only
  316.       flk? : is a flic format I created, somewhat like FLI and FLC except
  317.         it support bpp>8 (uses same compression DELTA & RLE)
  318.   - And more bug fixes
  319.   - Dropped DLL support for loading DLLs that can access variables in the
  320.     main program.  (needed a lot of ugly lookup tables)
  321.       It was too ugly and not needed anymore. (it was for the video DLLs and
  322.       those are now a single beautiful OBJ file)
  323.  
  324. New stuff in Preßeta V0.04:
  325.   - PACK.asm now maintains the files current pos and monitors reads.
  326.     If a read goes beyond the file it is shorted and no more reading is
  327.     allowed.  Very cool...
  328.   - data.000 prev did not have str2 packed into it so tpack failed in V0.03
  329.   - New functions have been completed:
  330.     EOF()
  331.     FILELENGTH()
  332.     TELL()
  333.       ;all just like in C
  334.       ;all work on normal files and packed files.
  335.  
  336. New stuff in Preßeta V0.03:
  337.   - added a size variable in pack files for great support on lseeking and
  338.     other stuff
  339.   - scanf's & printf's format string now contains 2 new things (+ and 0)
  340.     and support 's' for strings
  341.     %[0][+][S|H|B]type
  342.       type = b:byte w:word d:dword s:string c:char
  343.       0=print all leading zeros in # (eg: byte:000 word:00000 dword:000000000)
  344.       +=use + when printing signed #'s
  345.       S=signed
  346.       H=hex
  347.       B=binary
  348.   - fixed more bugs
  349.  
  350. V0.02 - V0.01 = pretty boring (actuall I never loged those) ...
  351.  
  352.